Over the past two decades significant effort has been committed to the compression of digitized video signals for purposes of image storage and transmission. As a result many types of compression techniques have evolved including the use of discrete cosine transforms, sub-band encoding, pyramid transforms, intraframe encoding, interframe encoding and combinations of the above to name a few. More recently the International Organization for Standardization has developed a video compression standard for use in video storage applications, e.g., CD-ROM. This proposed standard is described in the document "Coding of Moving Pictures and Associated Audio", ISO-IEC JTC1/SC2/WG11, MPEG 90/176 Rev.2; Dec. 18, 1990. Hereinbelow this system will be referred to as MPEG.
A feature of the MPEG standard is the use of both intraframe and interframe coding techniques in combination with discrete cosine transforms, run length encoding and statistical (Huffman) encoding. Intraframe encoding in general terms involves the encoding of an image frame from a single source frame to provide sufficient encoded data for reconstruction of an image from only the intraframe encoded data. Interframe encoding is the generation of encoded frame data from, for example, the differences between information from a current source frame and a frame predicted from prior frames. As such images may not be reconstructed from a frame of interframe encoded data without information from prior frames. The MPEG system incorporates two types of interframe encoding. The first develops predictive frames (designated P frames) from the current frame and a single prior frame. The second develops bidirectionally predictive frames (designated B frames) from the current frame and one or both of a prior and a subsequent frame. For example, assume that frames occur in a sequence F1, F2, F3, F4 . . . and that frame F1 is to be intraframe encoded (designated I frame), frames F2 and F3 are to be B frame encoded and frame F4 is to be P frame encoded. The P encoded frame is developed from differences between frame F4 and a predicted frame generated from a decoded version of I frame F1 only. The B encoded frame representing frame F2 (F3) is developed from differences between frame F2 (F3) and predicted frames generated from both a decoded version of I frame F1 and a decoded version of P frame F4. Exemplary circuitry for generating I, B and P encoded frames is described in "A Chip Set Core for Image Compression", by Alvin Artieri and Oswald Colavin, available from SGS-Thomson Microelectronics, Image Processing Business Unit, 17 avenue des Martyrs-B.P. 217, 38019 Grenoble Cedex France.
An exemplary sequence of I, B and P encoded frames is illustrated in FIG. 1A. In FIG. 1A the upper blocks correspond to odd fields of interlaced image data, and the lower blocks correspond to even fields of interlaced image data. The MPEG system protocol designates that only the odd fields of respective frames are to be encoded. The exemplary sequence includes 9 frames of I, B and P encoded data which sequences occur cyclically. The amount of encoded data of I frames is significantly greater than the amount of encoded data of P frames, and the amount of encoded data of B frames is less than that of encoded P frames. The number of P frames between I frames and the number of B frames between P or I and P frames is variable, i.e., it is user selectable within certain constraints. Nominally this selection is dependent upon the channel bandwidth and image content.
For the purpose of transmission the encoded data is divided into packets or segments of less than a frame. The segments are error encoded to provide a measure of error detection/correction in respective receivers. In order to minimize data overhead the error encoding is limited and provides for correction of errors of limited block size. Hence, some errors which may be incurred during transmission may be detectable but not correctable. However, if the location of non correctable errors can be determined, the effects of such errors may be ameliorated by error concealment techniques rather than error correction per se.